#include<bits/stdc++.h>
using namespace std;

class Solution
{
private:
    /* data */
public:
    int rob(vector<int>& nums){
        int len=nums.size();
        if(len==1){
            return nums[0];
        }
        // 0为不偷，1为偷当前
        int vec[]={0,0};
        vec[0]=0;
        vec[1]=nums[0];
        int temp;
        for(int i=1;i<len;++i){
            temp = vec[0];
            vec[0]=max(vec[0],vec[1]);
            vec[1]=temp+nums[i];
        }
        return max(vec[0],vec[1]);
    }
};

int main(int argc, char const *argv[])
{
    // vector<int> nums={1,2,3,1};
    vector<int> nums={2,7,9,3,1};
    Solution s;
    int res = s.rob(nums);
    cout<<res<<endl;
    return 0;
}

